/***************************************************************************
 *   Copyright (C) 2008 by Tomasz Dubik                                    *
 *   tdubik@gmail.com                                                      *
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 *   This program is distributed in the hope that it will be useful,       *
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
 *   GNU General Public License for more details.                          *
 *                                                                         *
 *   You should have received a copy of the GNU General Public License     *
 *   along with this program; if not, write to the                         *
 *   Free Software Foundation, Inc.,                                       *
 *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
 ***************************************************************************/

#include "settings.h"
#include "common.h"
#include <memory>
#include <QDebug>

Settings::Settings() : m_Settings( QSettings::UserScope,QString("QWhaTToDoOrg"),scApplicationName ){
}
Settings * Settings::instance() {
    static std::auto_ptr<Settings> spRet ( new Settings() ) ;
    qDebug() << spRet->m_Settings.fileName(); 
    return spRet.get();
}
QVariant Settings::value( const QString & _key ) {
    Settings * pI = instance();
    return pI->m_Settings.value( _key );
}
void Settings::setValue ( const QString & _key, const QVariant & value ) {
    Settings * pI = instance();
    pI->m_Settings.setValue(_key,value);
}
QString Settings::filePath() {
    Settings * pI = instance();
    return pI->m_Settings.fileName();
}
void Settings::sync() {
    Settings * pI = instance();
    pI->m_Settings.sync() ; 
}
Settings::~Settings() {
    m_Settings.sync();
}

